<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libfuse: include/fuse_opt.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">libfuse
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">fuse_opt.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="fuse__opt_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">  FUSE: Filesystem in Userspace</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">  Copyright (C) 2001-2007  Miklos Szeredi &lt;miklos@szeredi.hu&gt;</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">  This program can be distributed under the terms of the GNU LGPLv2.</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">  See the file COPYING.LIB.</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">*/</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#ifndef FUSE_OPT_H_</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#define FUSE_OPT_H_</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structfuse__opt.html">   77</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structfuse__opt.html">fuse_opt</a> {</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structfuse__opt.html#a215255be3ed5c0f6c3e0d5dcc96d7b12">   79</a></span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structfuse__opt.html#a215255be3ed5c0f6c3e0d5dcc96d7b12">templ</a>;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structfuse__opt.html#a333dcd849a3bd54df06084a69b5a8d39">   85</a></span>&#160;        <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="structfuse__opt.html#a333dcd849a3bd54df06084a69b5a8d39">offset</a>;</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structfuse__opt.html#aeb76339e1ce6948ad94bd2d4d5d01e20">   91</a></span>&#160;        <span class="keywordtype">int</span> <a class="code" href="structfuse__opt.html#aeb76339e1ce6948ad94bd2d4d5d01e20">value</a>;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;};</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a371d830a8aedd9e3f96d9bb31876a8f1">   98</a></span>&#160;<span class="preprocessor">#define FUSE_OPT_KEY(templ, key) { templ, -1U, key }</span></div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#aca35962e17d189ceb5447f8eea11bd33">  104</a></span>&#160;<span class="preprocessor">#define FUSE_OPT_END { NULL, 0, 0 }</span></div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structfuse__args.html">  109</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structfuse__args.html">fuse_args</a> {</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structfuse__args.html#a501883d1eababa08e05b0c802b31e11d">  111</a></span>&#160;        <span class="keywordtype">int</span> <a class="code" href="structfuse__args.html#a501883d1eababa08e05b0c802b31e11d">argc</a>;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structfuse__args.html#a6f90bec2356aff03de79baaca65276b6">  114</a></span>&#160;        <span class="keywordtype">char</span> **<a class="code" href="structfuse__args.html#a6f90bec2356aff03de79baaca65276b6">argv</a>;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="structfuse__args.html#a3fdc7eb5448d89a4ecbabba88cbafe5f">  117</a></span>&#160;        <span class="keywordtype">int</span> <a class="code" href="structfuse__args.html#a3fdc7eb5448d89a4ecbabba88cbafe5f">allocated</a>;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;};</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a9bea40fe56b18be9aa110185ab7387ed">  123</a></span>&#160;<span class="preprocessor">#define FUSE_ARGS_INIT(argc, argv) { argc, argv, 0 }</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a48cb1aea482de904a848651360117748">  129</a></span>&#160;<span class="preprocessor">#define FUSE_OPT_KEY_OPT     -1</span></div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a632b025441794a4e6fe59b7ab53bbfc4">  137</a></span>&#160;<span class="preprocessor">#define FUSE_OPT_KEY_NONOPT  -2</span></div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a8533ff341f910c1bd05f10c8fcc35a04">  145</a></span>&#160;<span class="preprocessor">#define FUSE_OPT_KEY_KEEP -3</span></div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a6e97b6ce492f1baaaf0a4eb4970c9a2f">  153</a></span>&#160;<span class="preprocessor">#define FUSE_OPT_KEY_DISCARD -4</span></div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="fuse__opt_8h.html#a3d2ab809528d409b0ee91cee400c07c2">  180</a></span>&#160;<span class="keyword">typedef</span> int (*<a class="code" href="fuse__opt_8h.html#a3d2ab809528d409b0ee91cee400c07c2">fuse_opt_proc_t</a>)(<span class="keywordtype">void</span> *data, <span class="keyword">const</span> <span class="keywordtype">char</span> *arg, <span class="keywordtype">int</span> key,</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                               <span class="keyword">struct </span><a class="code" href="structfuse__args.html">fuse_args</a> *outargs);</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fuse__opt_8h.html#a539ef1f571c34f516c60c4cbe2901c0e">fuse_opt_parse</a>(<span class="keyword">struct</span> <a class="code" href="structfuse__args.html">fuse_args</a> *args, <span class="keywordtype">void</span> *data,</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                   <span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structfuse__opt.html">fuse_opt</a> opts[], <a class="code" href="fuse__opt_8h.html#a3d2ab809528d409b0ee91cee400c07c2">fuse_opt_proc_t</a> proc);</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fuse__opt_8h.html#aaae525d5e959c5394bc323be0c1d02b0">fuse_opt_add_opt</a>(<span class="keywordtype">char</span> **opts, <span class="keyword">const</span> <span class="keywordtype">char</span> *opt);</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fuse__opt_8h.html#a51a00d087d08bef250a53b9e4979b1cd">fuse_opt_add_opt_escaped</a>(<span class="keywordtype">char</span> **opts, <span class="keyword">const</span> <span class="keywordtype">char</span> *opt);</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fuse__opt_8h.html#a21602e6a0fff64fc9c7b642d12382094">fuse_opt_add_arg</a>(<span class="keyword">struct</span> <a class="code" href="structfuse__args.html">fuse_args</a> *args, <span class="keyword">const</span> <span class="keywordtype">char</span> *arg);</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fuse__opt_8h.html#adb2922444d67f58e4233d21320386bc0">fuse_opt_insert_arg</a>(<span class="keyword">struct</span> <a class="code" href="structfuse__args.html">fuse_args</a> *args, <span class="keywordtype">int</span> pos, <span class="keyword">const</span> <span class="keywordtype">char</span> *arg);</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fuse__opt_8h.html#a2cdf272429ab3869a5162976141b287d">fuse_opt_free_args</a>(<span class="keyword">struct</span> <a class="code" href="structfuse__args.html">fuse_args</a> *args);</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fuse__opt_8h.html#af16c684bd2b10b7ac0ae299afa1e0e06">fuse_opt_match</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structfuse__opt.html">fuse_opt</a> opts[], <span class="keyword">const</span> <span class="keywordtype">char</span> *opt);</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;}</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* FUSE_OPT_H_ */</span><span class="preprocessor"></span></div><div class="ttc" id="fuse__opt_8h_html_a51a00d087d08bef250a53b9e4979b1cd"><div class="ttname"><a href="fuse__opt_8h.html#a51a00d087d08bef250a53b9e4979b1cd">fuse_opt_add_opt_escaped</a></div><div class="ttdeci">int fuse_opt_add_opt_escaped(char **opts, const char *opt)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8c_source.html#l00143">fuse_opt.c:143</a></div></div>
<div class="ttc" id="structfuse__args_html_a501883d1eababa08e05b0c802b31e11d"><div class="ttname"><a href="structfuse__args.html#a501883d1eababa08e05b0c802b31e11d">fuse_args::argc</a></div><div class="ttdeci">int argc</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00111">fuse_opt.h:111</a></div></div>
<div class="ttc" id="structfuse__opt_html_a333dcd849a3bd54df06084a69b5a8d39"><div class="ttname"><a href="structfuse__opt.html#a333dcd849a3bd54df06084a69b5a8d39">fuse_opt::offset</a></div><div class="ttdeci">unsigned long offset</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00085">fuse_opt.h:85</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_a539ef1f571c34f516c60c4cbe2901c0e"><div class="ttname"><a href="fuse__opt_8h.html#a539ef1f571c34f516c60c4cbe2901c0e">fuse_opt_parse</a></div><div class="ttdeci">int fuse_opt_parse(struct fuse_args *args, void *data, const struct fuse_opt opts[], fuse_opt_proc_t proc)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8c_source.html#l00397">fuse_opt.c:397</a></div></div>
<div class="ttc" id="structfuse__args_html_a3fdc7eb5448d89a4ecbabba88cbafe5f"><div class="ttname"><a href="structfuse__args.html#a3fdc7eb5448d89a4ecbabba88cbafe5f">fuse_args::allocated</a></div><div class="ttdeci">int allocated</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00117">fuse_opt.h:117</a></div></div>
<div class="ttc" id="structfuse__opt_html_aeb76339e1ce6948ad94bd2d4d5d01e20"><div class="ttname"><a href="structfuse__opt.html#aeb76339e1ce6948ad94bd2d4d5d01e20">fuse_opt::value</a></div><div class="ttdeci">int value</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00091">fuse_opt.h:91</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_af16c684bd2b10b7ac0ae299afa1e0e06"><div class="ttname"><a href="fuse__opt_8h.html#af16c684bd2b10b7ac0ae299afa1e0e06">fuse_opt_match</a></div><div class="ttdeci">int fuse_opt_match(const struct fuse_opt opts[], const char *opt)</div></div>
<div class="ttc" id="structfuse__opt_html_a215255be3ed5c0f6c3e0d5dcc96d7b12"><div class="ttname"><a href="structfuse__opt.html#a215255be3ed5c0f6c3e0d5dcc96d7b12">fuse_opt::templ</a></div><div class="ttdeci">const char * templ</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00079">fuse_opt.h:79</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_a21602e6a0fff64fc9c7b642d12382094"><div class="ttname"><a href="fuse__opt_8h.html#a21602e6a0fff64fc9c7b642d12382094">fuse_opt_add_arg</a></div><div class="ttdeci">int fuse_opt_add_arg(struct fuse_args *args, const char *arg)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8c_source.html#l00054">fuse_opt.c:54</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_a2cdf272429ab3869a5162976141b287d"><div class="ttname"><a href="fuse__opt_8h.html#a2cdf272429ab3869a5162976141b287d">fuse_opt_free_args</a></div><div class="ttdeci">void fuse_opt_free_args(struct fuse_args *args)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8c_source.html#l00033">fuse_opt.c:33</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_aaae525d5e959c5394bc323be0c1d02b0"><div class="ttname"><a href="fuse__opt_8h.html#aaae525d5e959c5394bc323be0c1d02b0">fuse_opt_add_opt</a></div><div class="ttdeci">int fuse_opt_add_opt(char **opts, const char *opt)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8c_source.html#l00138">fuse_opt.c:138</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_adb2922444d67f58e4233d21320386bc0"><div class="ttname"><a href="fuse__opt_8h.html#adb2922444d67f58e4233d21320386bc0">fuse_opt_insert_arg</a></div><div class="ttdeci">int fuse_opt_insert_arg(struct fuse_args *args, int pos, const char *arg)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8c_source.html#l00094">fuse_opt.c:94</a></div></div>
<div class="ttc" id="structfuse__args_html_a6f90bec2356aff03de79baaca65276b6"><div class="ttname"><a href="structfuse__args.html#a6f90bec2356aff03de79baaca65276b6">fuse_args::argv</a></div><div class="ttdeci">char ** argv</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00114">fuse_opt.h:114</a></div></div>
<div class="ttc" id="structfuse__opt_html"><div class="ttname"><a href="structfuse__opt.html">fuse_opt</a></div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00077">fuse_opt.h:77</a></div></div>
<div class="ttc" id="structfuse__args_html"><div class="ttname"><a href="structfuse__args.html">fuse_args</a></div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00109">fuse_opt.h:109</a></div></div>
<div class="ttc" id="fuse__opt_8h_html_a3d2ab809528d409b0ee91cee400c07c2"><div class="ttname"><a href="fuse__opt_8h.html#a3d2ab809528d409b0ee91cee400c07c2">fuse_opt_proc_t</a></div><div class="ttdeci">int(* fuse_opt_proc_t)(void *data, const char *arg, int key, struct fuse_args *outargs)</div><div class="ttdef"><b>Definition:</b> <a href="fuse__opt_8h_source.html#l00180">fuse_opt.h:180</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>
